# coding:utf-8

## Number

a = 100
b = int(100)

pi_a = 3.14
pi_b = float(3.14)


# 1. 检查数据类型内置函数:type(variable)

# print(type(a))
# print(type(b))
# print(type(pi_a))
# print(type(pi_a))

## String

c = str("hello world")
d = "hello world"
e = 'hello world'

# print(type(e))

# 1. 内置函数 id(variable)，可以返回变量的内存地址
print(id(c))

# 2. 内置函数 len(str_variable)，可以返回字符串类型变量的长度，对数字类型的变量无用
# print(len(pi_a)) # error
print(len(e))

# 3. 内置成员运算符 sub_str in/not in str，判断字符串类型变量str中是/否包含目标字符串sub_str
print("in / not in =>","world" in e)
# 4. 内置函数 max(data)->max成员值，返回数据中最大的成员(包括字符串和数字类型的变量)
# 5. 内置函数 min(data)->min成员值，返回数据中最小的成员(包括字符串和数字类型的变量)
#    中文符号>字母>数字>英文符号
#    中文按照拼音的首字母来计算
print(max("123"))
print(min("123"))
# 6. 字符串拼接 str1+str2
print(d+e)

## Bool
'''
# 1. True/Flase，真假
# 2. bool代表布尔类型，也可以对于结果进行真假的判断
# 3. 数字与字符串的布尔应用
# int:   非0为True，否则为False
# float: 非0.0为True，否则为False 
# str:   ''为False(空字符串)，否则为True
# 经常用01用来替代True，False
'''
res = bool('name' in 'my name is xxx')
# True
print(res)



## None空类型

'''
1. 不属于任何数据类型 就是空类型
2. 固定值:None
3. 空类型属于Flase的范畴
4. 如果不确定类型的时候，可以使用空类型
'''

f = None
# False
print(bool(f))

## List列表类型

'''
1. 列表是：
    队列
    各种数据类型的集合，也是一种数据结构
    是一种有序，且内容可重复的集合类型
2. 定义：
    variable = list([1, 2, 3, 4, 5])
    variable = [1, 2, 3, 4, 5]
    在python中，列表是一个无限制长度的数据结构
3. 列表元素类型：
    str_array = ['a', 'b', 'c']
    int_array = [1,2,3]
    float_array = [0.12,12.32]
    bool_array = [True,False]
    none_array = [None,None]
    list_array = [[1,2,3],[1.2,3.1]]
    mix_array = ['hello',1,3.14,None,True]
4. in,max,min在列表中使用
    1 in [1,2,3] True
    max([1,2,3]) 3
    min([1,2,3]) 1
    
    max和min在列表中使用的时候，列表元素的数据类型必须同一，否则报错运行失败 
'''


